home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
Amiga Plus 1997 #1
/
Amiga Plus CD - 1997 - No. 01.iso
/
pd
/
programmierung
/
mesa-1.2.8
/
widgets
/
man
/
mesaworkstation.pod
< prev
Wrap
Text File
|
1996-05-27
|
4KB
|
188 lines
=head1 NAME
MesaWorkstation - A simple workstation abstraction widget for Mesa/X
=head1 DESCRIPTION
=head1 Resources
The following X resources are available in addition to the B<MesaDrawingArea>
resources:
___________________________________________________________________________
| | | | |
| Name | Class | Type | OpenGL attribute |
|____________________|____________________|_________|______________________|
| | | | |
| | | | |
|____________________|____________________|_________|______________________|
=over 4
=back
=head1 Actions
=over 4
=item Projection ()
=item Move ()
=back
=head1 Translations
=over 4
=item ~Shift<Key>Left: I<Move(l)>
=item Shift<Key>Left: I<Move(l,10)>
=item ~Shift<Key>Right: I<Move(r)>
=item Shift<Key>Right: I<Move(r,10)>
=item ~Shift<Key>Up: I<Move(u)>
=item Shift<Key>Up: I<Move(u,10)>
=item ~Shift<Key>Down: I<Move(d)>
=item Shift<Key>Down: I<Move(d,10)>
=item <Key>plus: I<Move(+)>
=item <Key>minus: I<Move(-)>
=item ~Shift<Key>l: I<Projection(l)>
=item Shift<Key>l: I<Projection(L)>
=item ~Shift<Key>r: I<Projection(r)>
=item Shift<Key>r: I<Projection(R)>
=item ~Shift<Key>b: I<Projection(b)>
=item Shift<Key>b: I<Projection(B)>
=item ~Shift<Key>t: I<Projection(t)>
=item Shift<Key>t: I<Projection(T)>
=item ~Shift<Key>n: I<Projection(n)>
=item Shift<Key>n: I<Projection(N)>
=item ~Shift<Key>f: I<Projection(f)>
=item Shift<Key>f: I<Projection(F)>
=item ~Shift<Key>a: I<Projection(a)>
=item Shift<Key>a: I<Projection(A)>
=item <Key>p: I<Projection(p)>
=item <Key>o: I<Projection(o)>
=back
=head1 Utility functions
The following utility functions are available
=over 4
=item void GLwBeginProjection (Widget w)
=item void GLwEndProjection (void)
The following code snippet selects perspective projection for the
workstation I<ws>:
GLwBeginProjection (ws);
glFrustum (-1.0, 1.0, -1.0, 1.0, 1.0, 10.0);
GLwEndProjection ();
During redisplay, this will be executed as a display list with the
matrix mode set to I<GL_PROJECTION> and an identity matrix on top of
the projection matrix stack.
=item void GLwPostProjectionList (Widget w, GLuint p)
=item void GLwPostProjectionMatrix (Widget w, GLdouble *m)
=item void GLwPostCurrentProjection (Widget w)
=item void GLwUnpostProjection (Widget w)
=item GLuint GLwGetProjectionList (Widget w)
=item int GLwGetProjectionMatrix (Widget w, GLdouble *m)
=item void GLwSetFrustumProjection (Widget w, GLdouble left, GLdouble right,
GLdouble bottom, GLdouble top, GLdouble near, GLdouble far)
=item void GLwSetOrthoProjection (Widget w, GLdouble left, GLdouble right,
GLdouble bottom, GLdouble top, GLdouble near, GLdouble far)
=item void GLwBeginView (Widget w)
=item void GLwEndView (void)
The following code snippet selects a view from the z-axis for the
workstation I<ws>:
GLwBeginView (ws);
gluLookAt (0.0, 0.0, 3.0,
0.0, 0.0, 0.0,
0.0, 1.0, 0.0);
GLwEndView ();
During redisplay, this will be executed as a display list with the
matrix mode set to I<GL_MODELVIEW> and an identity matrix on top of
the model view matrix stack.
=item void GLwPostViewList (Widget w, GLuint v)
=item void GLwPostViewMatrix (Widget w, GLdouble *m)
=item void GLwPostCurrentView (Widget w)
=item void GLwUnpostView (Widget w)
=item GLuint GLwGetViewList (Widget w)
=item int GLwGetViewMatrix (Widget w, GLdouble *m)
=item void GLwSetPolarView (Widget w, GLdouble r, GLdouble theta, GLdouble phi)
=item void GLwPostObject (Widget w, GLuint o)
posts I<object> to I<w>.
=item void GLwUnpostObject (Widget w, GLuint o)
=item void GLwUnpostAllObjects (Widget w)
=item void GLwRedrawObjects (Widget w)
force a redraw of all objects posted to I<w>.
=back
=head1 SEE ALSO
L<GLwDrawingArea>, L<MesaDrawingArea>
=head1 AUTHOR
Thorsten.Ohl @ Physik.TH-Darmstadt.de
=head1 DATE
$Id: MesaWorkstation.pod,v 1.6 1995/05/19 20:31:00 ohl Exp $